#ifndef __CLIENT_BASE__
#define __CLIENT_BASE__

#include "..\Common\CommonThread.h"
#include "..\Common\CommonNetwork.h"

enum ERROR_CODE {
	EC_INVALID_NETWORK
};

class client_base {
public:	
	virtual void		 SetClientCode(unsigned int ClientCode)	= 0;
	virtual unsigned int GetClientCode(void)					= 0;
	
	virtual void Error(ERROR_CODE ErrorCode)					= 0;
	virtual void CriticalError(int ErrorCode)					= 0;
	virtual void NormalError(int ErrorCode)						= 0;

	virtual network*		GetUDPNetwork(void)					= 0;
	virtual string			GetServerIP(void)					= 0;
	virtual int				GetServerUdpPort(void)				= 0;	
	virtual thread_manager& ThreadManager(void)					= 0;
	virtual void			Focus(void)							= 0;	

	virtual bool			SwitchMoniterBroadcaster(void)		= 0;
	virtual bool			GetMoniterBroadcaster(void)			= 0;
	virtual void			SetBorderFrameTime(float Time)		= 0;	
};

#endif